﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Negocio.Generico;
using System.IO;

namespace PresentacionWeb.Handler
{
    public class HttpImageHandlerIHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
           
            //
            // Arma el contexto que enviara la imagen en el response
            // se usa el nombre del empleado para el nombre del archivo que se envia
            //
            PersonaDTO tokenUsuario = (PersonaDTO)context.Session["tokenUsuario"];

            context.Response.Clear();
            context.Response.AddHeader("content-disposition", string.Format("attachment;filename={0}", tokenUsuario.NombreImagen));
            context.Response.ContentType = "image/jpg";

            byte[] imagen = tokenUsuario.Imagen;
            if (tokenUsuario.Imagen == null)
                imagen = File.ReadAllBytes(context.Server.MapPath("imagenes/no_disponible.png"));

            //
            // Se escribe en el response la imagen asociada al empleado
            //
            context.Response.BinaryWrite(imagen);
            context.Response.End();
        }

        public bool IsReusable
        {
            get { return false; }
        }
    }

}

